package mbsl.storage;

public interface DatabaseTableManipulator {
	/**
	 * Adds a command to the command queue.
	 * @param command An SQL command.
	 */
	public void add(String command);
	/**
	 * Adds the commands from a SQL script file to the command queue.
	 * <p>
	 * The script can have comments in it, but commands cannot span over several lines.
	 * @param resourceName A resource location, as used when imported with {@link ClassLoader}.getSystemResourceAsStream().
	 * @see {@link ClassLoader}
	 */
	public void addScript(String resourceName);
	/**
	 * Returns true if the passed table already exists in the database.
	 */
	public boolean exists(String tableName);
	/**
	 * Commits the commands in the queue.
	 */
	public void commit();
}
